package com.blacktech.dbu.auth.security;

import java.lang.annotation.*;

/**
 * 角色权限 - 基于用户类型权限级别的静态权限控制
 *
 * @author Yanyunsong
 */
@Target({ElementType.TYPE, ElementType.METHOD})
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface RolePermission {

    /**
     * 必需的权限级别
     * 使用UserType的permissionLevel数值，数值越低权限越高
     * 例如：requireLevel = 3 表示需要DEVELOPER(3)或更高级别权限（ADMIN=2, SUPER_ADMIN=1）
     */
    int required();

    /**
     * 权限检查失败时的错误消息
     */
    String message() default "权限不足";
}